//判断子序列
/*给定字符串 s 和 t ，判断 s 是否为 t 的子序列。

字符串的一个子序列是原始字符串删除一些（也可以不删除）字符而不改变剩余字符相对位置形成的新字符串。（例如，"ace"是"abcde"的一个子序列，而"aec"*/
class Solution {
public:
    bool isSubsequence(string s, string t) {
        int index = -1;
        for (int i = 0; i < s.size(); i++) {
            index = t.find(s[i], index + 1);
            if (index == string::npos) {
                return false;
            }
        }
        return true;
    }
};

//旋转图像
/*给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。

你必须在 原地 旋转图像，这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。*/
class Solution {
public:
    void rotate(vector<vector<int>>& matrix) {
        int n = matrix.size();
        for (int r = 0; r < n / 2; r++) {
            for (int c = r; c < n - 1 - r; c++) {
                swap(matrix[r][c], matrix[c][n - 1 - r]);
                swap(matrix[r][c], matrix[n - 1 - r][n - 1 - c]);
                swap(matrix[r][c], matrix[n - 1 - c][r]);
            }
        }
        //return matrix;
    }
};